An information handling system (IHS) may include one or more processors for processing, handling, communicating or otherwise manipulating information. A multi-core processor is one term that describes a processor with multiple processors or cores integrated in a common integrated circuit (IC). One example of a multi-core processor is a cell broadband engine (CBE) processor such as shown in the publication entitled “Cell Broadband Engine Architecture, Version 1.0”, by IBM Corp, Sony and Toshiba, Aug. 8, 2005, the disclosure of which is incorporated herein by reference in its entirety. An IHS may concurrently support multiple operating systems. Moreover, multiple software program applications may execute within the IHS at the same time. For example, an IHS may execute a test program application for debugging existing hardware and software and at the same time execute a program for calculating and sending graphics data to a display. A multi-processing environment is an environment in which multiple programs execute or run concurrently. Multi-processing environments are commonplace in conventional processor architectures and require extensive and complex testing scenarios.
Information handling system designers, users, and other entities require the ability to test IHSs in a variety of configurations to verify capability and functionality. System designers may use a test methodology to test an IHS for basic high level functionality during the integrated circuit fabrication process. For example, a test process may check integrated circuits for speed and discard integrated circuits that test slow. The test process may alternatively separate integrated circuits into categories of circuits, for example circuits useful in slower speed applications and circuits useful in faster speed applications. Other test methodologies provide for testing IHSs after fabrication processing and prior to integration into a larger more complex system. Such test methodologies may involve basic IC and component level testing. For example, testing may include providing power to the IHS and injecting signals into input busses and monitoring output busses for proper data values, timing signals, and other testable criteria. IHS test methods may include provisions for application of external environmental parameters such as temperature, humidity, power supply noise level, and other variable inputs. Typically after functional testing yields a good IHS, the next level of testing operates in real life or real time environments. Real time tests require the introduction of test methodologies to a fully functioning IHS.
Although testing may include on-board test hardware and software within the IHS, eventually test results must be written to some external device for system users to interpret. As IHSs become more and more complex, the testing methodologies must likewise become more complex for accurate and complete testing. One particular test methodology relies on the external communication from a controlling IHS to an IHS under test. The controlling IHS may communicate through an external communication bus to the IHS under test. The speed and effectiveness of the communication bus and the hardware and software that manages the communications becomes a large factor in the capability and effectiveness of this style of testing methodology. This style of testing and other conventional testing strategies introduce unknown effects upon the IHS under test by the invasive nature of the test methodologies.
What is needed is a method and apparatus that more completely utilizes the effective communication interfaces of complex IHSs in a test architecture and solves the problems above.